package com.domain;

import com.controller.ShootGame;

import java.awt.image.BufferedImage;
import java.util.Random;

/**
 * 蜜蜂类
 */
public class Bee extends Flying {

    private int awardType;//奖励类型
    private Random random = new Random();//创建一个生成随机数的对象
    private int direction = random.nextInt(2);//移动方向

    public int getAwardType() {
        return awardType;
    }

    //方法（类中对象所具有的能力）
    public Bee() {//无惨构造
        setImage(ShootGame.bee1);//给图片属性赋值
        setWidth(getImage().getWidth());//给图片属性赋值
        setHeight(getImage().getHeight());//给图片的高赋值
        setySpeed(3);//声明敌机往下运动的速度
        setxSpeed(3);//声明敌机往右运动的速度
        setY(-getHeight());//给图片的y轴赋值
        setX(random.nextInt(ShootGame.WIDTH-getWidth()));//给图片的x轴坐标赋值
        awardType = random.nextInt(2);//给蜜蜂的奖励类型
        setImages(new BufferedImage[]{ShootGame.bee0, ShootGame.bee1});//使飞机移动喷气的图片

    }

    @Override
    public void move() {
        //使飞机移动喷气
        setIndex(getIndex()+1);
        setImage(getImages()[getIndex()%2]);
        //移动速度
        setY(getY()+getySpeed());
        //判断移动方向1向左其他向右
        if (direction == 0){
            setX(getX()-getxSpeed());//向左移动
        }else {
            setX(getX()+getxSpeed());//向右移动
        }
        //判断蜜蜂是否超出右边框是则向左移动
        if (getX() >= ShootGame.WIDTH-getWidth()){
            setxSpeed(-getxSpeed());
        }
        //判断蜜蜂是否超出左边框是则向右移动
        if (getX() <= 0){
            setxSpeed(-getxSpeed());
        }

    }

}
